import SvgIcon from './SvgIcon/index.vue'
import type { App } from 'vue'
// 引入 Element Plus 的所有图标组件
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

// 全局自定义组件对象
const allGlobalComponent: Record<string, any> = { SvgIcon }

// 对外暴露插件对象
export default {
  install(app: App) {
    // 1️⃣ 注册自定义全局组件
    Object.keys(allGlobalComponent).forEach((key) => {
      app.component(key, allGlobalComponent[key])
    })

    // 2️⃣ 注册 Element Plus 的所有图标组件
    for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
      app.component(key, component)
    }

    // console.log('✅ 全局组件与图标注册完毕：', Object.keys(ElementPlusIconsVue).length, '个图标')
  },
}
